Explain the @Output in Angular.
113
22-Dec-2025
Updated on 22-Dec-2025
Anubhav Kumar
22-Dec-2025In Angular,
@Output()is used to send data or events from a child component to its parent component.Think of it as:
Why
@Outputis NeededAngular components are isolated. A child component cannot directly change parent data.
So Angular provides:
@Input()→ Parent ➜ Child@Output()→ Child ➜ ParentBasic Definition
@Output()marks an eventEventEmitteremits dataSimple Example
Child Component
Parent Component
How It Works (Internally)
$eventcontains emitted valueCustom Event Names
Emitting Objects
@Outputvs Callback FunctionBad practice:
Correct Angular way:
Best Practices
@Outputonly for events, not data storagesaved,deleted)Observablefor complex streamsReal-World Example